Semiconductor and, more specifically, polysilicon or metal fuses are well known in the art and are commonly used, e.g., to activate redundancy configurations in memory devices such as SRAMs and DRAMs, or to trim resistors for setting reference levels in analog applications. Polysilicon or metal fuses are typically programmed by applying a high current pulse causing the fuse to melt and form an open circuit, or blown by a focused laser beam, both of which disable unwanted circuits or components.
Generally, fuses that are used in SRAMs and those that are used in DRAMs and microprocessors differ from each other primarily because the process of the one is not compatible with that of the other. More specifically, DRAMs and microprocessors typically use a CMOS process, wherein each additional process step, e.g., using double-polysilicon gate to form a floating gate, interpolysilicon oxide and tunnel oxide to allow for programming and erasure, requires extra materials and/or components which, in turn, introduces undesired cost overruns.
More recently, anti-fuses have been advanced having a thin dielectric layer placed between two layers of conductive material. Typically, anti-fuses start out as an open circuit and are programmed by applying a large voltage pulse which causes the dielectric to rupture, creating a conductive path. Fuses and anti-fuses have been used in a variety of combinations. An example of a combination of a reprogrammable link comprising fuses and anti-fuses used in an integrated circuit (IC) is described in U.S. Pat. No. 5,412,593 to Magel et al.
In another instance, in U.S. Pat. No. 5,200,652 issued to Lee, is described a programmable/reprogrammable structure which combines fuses and anti-fuses in a series/parallel arrangement, enabling multi-programming selected nodes within a circuit.
The presence of fuses and antifuses side by side, as described by Magel et al. and Lee typically requires a combination of selected materials and process steps which render the reprogrammable fuse far too expensive for many applications.
On an unrelated matter, conventional fuses can be programmed only once. Yet, reusing fuses is oftentimes important as, for instance, to alter the code in a Read-Only Memory (ROM) or a Programmable Read-Only Memory (PROM). In order to reprogram a fuse, several schemes have been suggested. However, they have the disadvantage of requiring the presence of certain fuse components which are not part of the traditional fuse technology, making them impractical for many applications. Specific examples described hereinafter will illustrate some of these drawbacks.
In a first illustration, programmable fuses are used in Programmable Logic Arrays (PLAs) to implement a first Boolean function, and then re-programmed to implement a second Boolean function. Programming is accomplished by blowing appropriate fuses in a fuse bank, disconnecting certain portions of the logic while letting other fuses provide the necessary connecting paths to form the desired circuit. An example of a PLA is described in U.S. Pat. No. 5,432,388 issued to Crafts et al. on Jul. 11, 1995.
In a second example, fuses have been used for programming Erasable Programmable Read-Only Memory devices (EPROM), even though EPROM fuses are known to be a one-time programmable element. Still, in another type of EPROM, known as an Electrically Erasable Programmable Read-Only Memory (EEPROM), reprogrammable EEPROM fuses have been successfully used to bring into operation redundancy circuits. Such an application is described in U.S. Pat. No. 5,642,316 to Tran et al. However, these devices suffer from a drawback in that they require a high voltage to program and erase. Moreover, such devices are incompatible with conventional CMOS processes, since the inherent nature of the materials commonly used for EEPROM fuses is not adaptable to conventional CMOS technology, thereby rendering them unfit for the above described applications.
In conclusion, in all aforementioned conventional programmable fuses, including EEPROMs, a fuse is programmed in order to define a logic configuration or to place in and out of service redundancy means. However, in general, within the constraints of using only components that are traditionally utilized in fuse technology and the requirement that the process steps also conform to CMOS technology groundrules, no satisfactory solution has been found for making a conventional fuse reprogrammable. Even in those instances, like the ones described by Magel et al or by Lee, the added process steps and the nature of the materials required for its construction, e.g., the anti-fuses, are incompatible with DRAM and microprocessor technology requirements, since such an implementation would be prohibitively expensive.
Practitioners in the art will fully appreciate that there is a need to endow a conventional fuse with the ability of being reprogrammed since such fuses play an important role in the design of circuits and network at a stage when they still undergo changes. This is particularly the case when certain basic operational parameters are not yet defined such as, for instance, clock frequency, loading capacitance, and the like. It would be particularly beneficial to ensure that while a circuit or network is being tested, settings and configurations could be changed at will, preferably by way of reprogramming fuses in order to facilitate the design by introducing a certain amount of flexibility. This is normally not possible with conventional fuse designs.